М. Куприянов, М. Бычков

16- и 32-разрядные микроконтроллеры фирмы MOTOROLA

    По мере усложнения функций, выполняемых встраиваемым контроллером, и соответствующего роста требований, предъявляемых к производительности МК, а также в связи с увеличением разрядности АЦП и объемов обрабатываемых данных перед многими разработчиками остро встал вопрос о переходе на МК с более высокой разрядностью, поскольку дальнейшее развитие архитектуры и повышение тактовой частоты 8-разрядных МК имеет очевидный предел и часто не дает требуемого эффекта.
    Первой и основной причиной, привлекающей пользователей к 16- и 32-разрядным МК, является их высокая производительность. Помимо увеличенной разрядности производительность определяется тактовой частотой. Фирма Motorola перекрывает своими изделиями практически весь диапазон тактовых частот. Например, 16-разрядные МК поддерживают диапазон 0…20,97 Мгц; 32-разрядные архитектуры на основе CISC-ядер — 0…40 МГц. Учитывая, что Motorola уже выпускает процессоры (впоследствии становящиеся ядрами МК) с частотами до 350 МГц и разрабатывает процессоры с частотой до 1 ГГц, можно быть уверенным в возможности дальнейшего наращивания производительности при использовании МК этой фирмы.
    Дополнительное повышение производительности осуществляется за счет введения в структуру МК сопроцессоров разной функциональной ориентации: обмена данными; вычисления математических операций, ввода-вывода, цифровой обработки сигналов и др. Эти интеллектуальные, содержащие собственное микроядро, встроенные подсистемы позволяют “разгрузить” центральный процессор, берут на себя выполнение специфических функций и определяют ориентацию МК на конкретную область использования. В развитие этой идеологии Motorola строит свои МК на базе стандартных модулей, из набора которых быстро и с минимальными затратами создается новый МК.
    Семейства 16- и 32-разрядных МК Motorola используют стандартную внутримодульную шину (IMB), основное преимущество которой заключается в том, что в МК с различным процессорным ядром могут использовать одни и те же периферийные модули. Это не только обеспечивает лучшее использование модулей, которые известны производителям и протестированы в тысячах приложений, но и позволяет, например, программы, написанные на C для 16-разрядного МК и затрагивающие периферийные устройства, просто перекомпилировать и выполнять без изменений на 32-разрядном МК.
    Рассматривать конкретные МК и их семейства целесообразно после краткого представления их основных составных частей (модулей).

Краткий обзор встроенных модулей

    Процессорные ядра. Базовым модулем МК является процессорное ядро, которое и отличает одно семейство МК от другого. Для семейств 16-разрядных МК НС12 и НС16 используются ядра CPU12 и CPU16.

    CPU12 имеет 16-разрядные внутренние шины и может выполнять арифметические операции с данными шириной до 20 битов для высокоскоростных математических вычислений. В отличие от других 16-разрядных процессоров, CPU12 позволяет выполнять операции с нечетным байтом, включая много однобайтовых инструкций. CPU12 предлагает расширенный набор вариантов индексной адресации, включая использование в качестве индексных регистров указателя стека и программного счетчика, автоматический пре- и постинкремент и декремент. Система расширенной адресации позволяет адресовать до 4 Мбайт памяти программ и 1 Мбайт памяти данных.

    CPU16 спроектировано с богатым набором команд и методов адресации, а также вводом/выводом, включенным в адресное пространство, что делает это ядро очень простым для программирования. Набор команд поддерживает высокоуровневые языки и оптимизирующую компиляцию. CPU16 является совместимым по исходному коду с ранее разработанными 8-битовыми микроконтроллерами М68НС11, но работает примерно в 8 раз быстрее. Важным элементом CPU16 является блок умножения с аккумуляцией (МАС), что позволяет эффективно использовать этот процессор для цифровой обработки сигнала.
    Для семейства 32-разрядных МК и (ИП) М68300 используются ядра 68000, 68ЕС000, CPU32, CPU32+, CPU030. Новые семейства встроенных ИП и МК МРС500 и МРС800 основаны на 32-разрядном ядре PowerPC с RISC-архитектурой. Новое семейство интегрированных 32-разрядных RISC-процессоров ColdFire, имеющие переменную длину инструкций и многие черты семейства М68К, призваны обеспечить новый уровень соотношения производительность/цена для массовых рынков.

    CPU32. Архитектурный облик CPU32 определил процессор 68000. Дополнительно использовались возможности микропроцессоров 68010, 68020; введены также дополнительные функции, ориентирующие архитектуру на встроенные приложения. CPU32 содержит 32-разрядные регистры адреса и данных и линейно адресует 16 Мбайт памяти с динамическим изменением разрядности шины (8 или 16). CPU32 обеспечивает быструю реакцию на прерывание и поддерживает режимы пониженного потребления.
    Развитием модуля CPU32 являются CPU32+ и CPU030. CPU32+ является полностью 32-битной версией CPU32 (разрядность внешней шины данных также равна 32) с повышенной производительностью (8,3 MIPS на частоте 25 Мгц). СPU030 объединяет в себе CPU32+, конфигурируемый кэш команд и блок управления памятью.

    RISC. Процессорные модули, основанные на RISC-архитектурах, включают в себя PowerPC и ColdFire и обеспечивают наивысшие показатели производительности. Версия процессора PowerPC, адаптированная к встроенным приложениям, обеспечивает выполнение команд за один такт, содержит четыре независимых операционных блока, включая блок плавающей арифметики, и два набора из 32 регистров данных, а также 4 Кбайта кэш-памяти команд. Ядро ColdFire с масштабируемой архитектурой имеет переменную длину команд, что позволяет получать более компактный код и тем самым снизить стоимость внешней памяти. Режимы пониженного потребления этого процессора специально проработаны для портативных приложений.

Коммуникационные модули

    CPM. Скоростной коммуникационный сопроцессор CPM с RISC-ядром осуществляет автоматическое управляющего обменом данными по нескольким независимым каналам, поддерживает практически все распространенные протоколы обмена (HDLC/SDLC, Ethernet, UART, Transparent, Signaling System #7, Profibus, ATM, и другие) и позволяет гибко и эффективно распределять и обрабатывать последовательные потоки данных с временным разделением каналов (например, 2 Мбит ИКМ или ISDN PRI). Среди многочисленных применений МК с CPM можно выделить цифровые телефонные станции, абонентское и групповое оборудование ISDN, базовые станции сотовой связи, модемы, терминалы, мосты, маршрутизаторы и многие другие устройства.

    QSM. Буферизованный модуль последовательной связи QSM содержит последовательный периферийный синхронный интерфейс (SPI) с буферным ОЗУ очереди и последовательный коммуникационный интерфейс (SCI), обеспечивающий стандартный асинхронный формат со скоростью передачи до 524 Кбод.

    MCCI. Многоканальный коммуникационный интерфейс (MCCI) содержит три последовательных интерфейса: последовательный периферийный интерфейс (SPI) и два последовательных коммуникационных интерфейса (SCI).

    DUART. Двойной универсальный синхронно-асинхронный приемопередатчик (DUART), хорошо известный разработчикам, обеспечивает два канала RS-232 с поддержкой сигналов RTS и CTS; двойное буферирование на передачу и четырехкратное буферирование на прием при скорости обмена до 76,8 Кбод.

    TouCAN. Модуль TouCANд реализует контроллерный сетевой протокол (CAN интерфейс), синхронный коммуникационный протокол, используемый в автомобильных системах и системах промышленного управления со скоростью обмена до 1 Мбит/сек.

Таймерные модули

    TPU. Таймерный сопроцессор TPU ориентирован на решение задач скоростного управления и позволяет резко сократить участие процессора при обработке быстрых процессов в реальном времени. TPU содержит 16 независимых многофункциональных каналов; две временные базы; планировщик событий, осуществляющий взаимодействие между каналами; двухпортовое ОЗУ с возможностью загрузки микрокода TPU; ПЗУ микрокода с встроенными наиболее распространенными функциями. Наличие в TPU 16-ти независимых каналов, каждый из которых выполняет любую из двух десятков стандартных функ-ций (типа ШИМа, входного захвата, измерения частоты, и т.д.) плюс дополнительные функции пользователя, и при этом возможность организации взаимосвязи между каналами в реальном времени без участия процессора.

    GPT. Таймер общего назначения (GPT) является простым и гибким 11-канальным таймером. GPT содержит счетчики с предделителями, каналы входной фиксации, выходного сравнения, ШИМ и счетчика событий.

    CTM. Конфигурируемый таймерный модуль (СТМ) легко видоизменяется для различных типов приложений. СТМ содержит: счетчики с предделителями, двунаправленные универсальные каналы (входная фиксация, выходное сравнение, ШИМ, или сдвоенный канал);

Модули системной интеграции

    SIM. Системный интеграционный модуль SIM обеспечивает интерфейс внешней шины и защиту от системных ошибок и включает в себя: программируемые выборки кристалла; управление внешней шиной с динамическим изменением разрядности данных; сторожевой таймер; таймер периодических прерываний; выводы IRQ; систему защиты от ошибок на шине.

    SCIM. Имея характеристики, аналогичные SIM, за исключением отмеченных ниже, SCIM обеспечивает работу как в однокристальном режиме (когда программа выполняется во встроенной памяти, при этом все линии портов доступны для ввода/вывода), так и в расширенном режиме (работа из внешней памяти). Расширенная версия однокристального модуля интеграции SCIM2 используется в некоторых моделях М68НС16 и М68300 и отличается возможностью выбора источника тактового сигнала.

Модули памяти

    Flash. Модуль энергонезависимой памяти FLASH EEPROM может иметь объем до 64 КБайт (в некоторых моделях имеется два таких модуля), поддерживает операции с байтами, словами и двойными словами и имеет высокую скорость доступа (2 такта).

    ROM. Модуль ПЗУ (ROM) выпускается в виде масочного ПЗУ для крупносерийных заказчиков, и может иметь объем до 96 КБайт.

    RAM. Модуль статического ОЗУ (RAM) имеет режим сохранения данных (Standby Mode) с отдельным питанием и микропотреблением. Модуль ОЗУ поддерживает операции с байтами, словами и двойными словами, и может иметь объем 1, 1,5, 2, 3,5 и 4 КБайта.

    TPURAM. Модуль ОЗУ с эмуляцией TPU (TPURAM) позволяет загружать в него микрокод для выполнения TPU и может иметь объем до 4 КБайт. Этот объем позволяет хранить полный набор стандартных функций плюс достаточно сложные функции пользователя.

Аналоговые модули

    ADC. Аналого-цифровой преобразователь (ADC) содержит восемь 10/8-разрядных каналов с программируемыми временами выборки/хранения, а также имеет несколько автоматических режимов преобразования, 8 регистров результата и 3 формата представления данных.

    QADC. АЦП с очередью преобразований (QADC) автоматически производит преобразование по 16 внутренним каналам (до 44 с внешним мультиплексором), используя две независимые очереди и 32 регистра результата. В остальном QADC аналогичен модулю ADC.

Семейство HС12

    Новое 16-разрядное семейство НС12 является очередным шагом в развитии МК Motorola в направлении повышения производительности и снижения потребления. Целевыми рынками МК данного семейства являются разнообразные портативные устройства, особенно средства беспроводной связи, автомобильная электроника, устройства промышленного управления.
    Первыми представителями семейства НС12 стали МС68НС812А4 и МС68НС916В32, серийный выпуск которых начался в конце 1997 года.
    МС68НС812А4 содержит CPU12 с внутренней тактовой частотой 8 МГц; 4К ПЗУ EEPROM с побайтовым стиранием; 1К ОЗУ; 8-разрядный 8-канальный АЦП; 8-канальный 16-разрядный универсальный таймер; два асинхронных и один синхронный последовательный интерфейс; прерывания реального времени и сторожевой таймер; 7 программируемых выборок с поддержкой расширенной адресации (до 4М памяти программ и 1М памяти данных).
    МС68НС912В32, разработанный для автомобильных и индустриальных приложений, 32К ПЗУ Flash EEPROM; 768 байт ОЗУ; 8-разрядный 8-канальный АЦП; 8-канальный 16-разрядный универсальный таймер; 8-разрядный 4-канальный ШИМ, оптимизированный для управления двигателями; асинхронный и синхронный последовательный интерфейс, а также автомобильный контроллер обмена BDLC (J1850); прерывания реального времени и сторожевой таймер.

Семейство НС16

    Эффективному использованию МК НС16 способствуют поддержка функций DSP, высокая производительность истинно 16-битного CPU16 с частотой до 25 МГц и мощная периферия. Ниже в табл. 1 приведены краткие характеристики основных представителей семейства НС16.

Таблица 1

  68HC916X1 68HC16Y1 68HC916Y1 68HC16Z1 68HCZ2 68HC16Z3 68HC16S2 68HC16V1
Масочное ПЗУ 0 48K 0 0 8K 8K 0  
ОЗУ 2K 2K 4K 1K 2K 4K 2K 0
Flash EEPROM 50K 0 48K 0 0 0 0 0
Таймер 3-4 IC,4-5
OC,2PWM,
PIT,WDOG
16-канальн.
TPU, 3-4 IC,
4-5 OC, 2
PWM,PIT,
WDOG
16-канальн.
TPU, 3-4 IC,
4-5 OC, 2
PWM,PIT,
WDOG
3-4 IC,
4-5 OC,
2 PWM,
PIT,
WDOG
3-4 IC,
4-5 OC,
2 PWM,
PIT,
WDOG
3-4 IC,
4-5 OC,
2PWM,
PIT,
WDOG
PIT, WDOG 3-4 IC,
4-5 OC,
2 PWM PIT,
WDOG
Послед.порт SPI, 2 SCI SPI, 2 SCI SPI, 2 SCI QSPI, SCI QSPI, SCI QSPI, SCI Нет QSPI, SCI
АЦП 8/10 бит 8/10 бит 8/10 бит 8/10 бит 8/10 бит 8/10 бит нет нет
Линии
вв./выв.
95 95 95 46 46 46 23 62
Fтакт.,
МГц
0-16,78 0-16,78 0-16,78 0-25,17 0-25,17 0-20...7 0-20,97 0-20,97
Темпер.
диапазон*
C, V, M C, V, M C, V, M C, V, M C, V, M C, V, M C, V C
Модули CPU16, SCIM,
MCCI, GPT,
ADC, SRAM,
FLASH
CPU16, SCIM,
MCCI, TPU,
GPT, ADC,
SRAM, TPURAM
CPU16, SCIM,
MCCI, TPU,
GPT, ADC,
SRAM, TPURAM
CPU16, SCIM,
QSM, GPT,
ADC,
SRAM
CPU16, SCIM,
QSM, GPT,
ADC,
SRAM,
MRM
CPU16, SCIM,
QSM, GPT,
ADC,
SRAM,
MRM
- -
Доп. свойства 9 прог.CS/,
синте-
затор
такт.част.
с ФАПЧ
9 прог.CS/,
синте-
затор
такт.част.
с ФАПЧ
9 прог.CS/,
синте-
затор
такт.част.
с ФАПЧ
12 прог.CS/,
синте-
затор
такт.част.
с ФАПЧ
12 прог.CS/,
синте-
затор
такт.част.
с ФАПЧ
12 прог.CS/,
синте-
затор
такт.част.
c ФАПЧ
12 прог.CS/,
синте-
затор
такт.част.
с ФАПЧ
12 прог.CS/,
синте-
затор
такт.част
с ФАПЧ
Тип
корпуса
120FH 160FT 160FT 132FC 132FV 132FC 100PU 100PU



Примечание:* Температурный диапазон: C = (-40 до 85°C),
V = (-40 до 105°C),
M = (-40 до 125°C)


Семейство 68300

    МК семейства 68300 являются, пожалуй, наиболее известными и распространенными из высокопроизводительных МК фирмы Motorola. Более пяти миллионов МК и МП 68000 отгружаются ежемесячно. При рассмотрении МК семейства 68300, в нем можно выделить три основные группы, принципиально отличающиеся по функциональному назначению:

    МС68331 является единственным МК этой группы, не содержащим таймерного сопроцессора. Этот МК ориентирован на приложения, в которых требуются простые конфигурации и умеренные требования к быстродействию при невысокой цене. 68331 содержит CPU32, SIM, таймер общего назначения и модуль последовательного доступа QSM.

    МС68332 был разработан совместно с General Motors и изначально предназначался для высокоточного управления автомобильным двигателем, а также мощных электродвигателей различного типа. Архитектура этого МК оказалась настолько удачной, что область его применения существенно расширилась (сейчас МС68332 применяется, например, в сотовых абонентских аппаратах GSM) и возникло целое семейство модификаций базовой модели, кратко рассмотренное ниже. Полезным следствием популярности МС68332 является доступность программных отладочных средств, примеров применения, множество телеконференций, специализированные серверы независимых организаций, а также поддержка этого контроллера российскими техническими центрами Motorola.
    МС68F333 является первым микроконтроллером семейства 68300, содержащим энергонезависимую память Flash EEPROM (48+16 КБайт). Кроме того, дополнительно к возможностям 68332 этот МК содержит 10-разрядный 8-канальный АЦП, 4 КБайта ОЗУ и однокристальный модуль системной интеграции SCIM, позволяющий использовать до 80 линий для ввода/вывода при выполнении программы из встроенной памяти.
    МС68334 является упрощенной версией МС68F333, не содержащей Flash-памяти и модуля связи, а также имеющий уменьшенный объем ОЗУ (1 КБайт).
    МС68336 имеет еще более мощную таймерную подсистему, представленную, помимо ТPU, конфигурируемым таймером СТМ4, который содержит 4 универсальных двунаправленных канала, 4 канала ШИМ и 2 временные базы. АЦП с очередью преобразований QADC имеет несколько режимов автоматиче-ского преобразования по 16 каналам с записью результата в буферное ОЗУ. Объем ОЗУ увеличен до 7,5 КБайт (3,5 К ОЗУ с поддержкой кода TPU и 4 К ОЗУ данных).
    МС68376 является расширением МС68336, в котором дополнительно содержится масочное ПЗУ и модуль сетевого контроллера (TouCAN™), поддерживающего протокол CAN 2.0B. Этот МК предназначен в первую очередь для массовых автомобильных приложений (управление двигателем, активная подвеска).
    Основной причиной успеха представителей семейства 683хх в сфере промышленного управления стал оптимальный набор встроенных функций и, в особенности, наличие мощного таймерного сопроцессора TPU.

Таймерный сопроцессор

    Таймерный сопроцессор (TPU, Time Processor Unit) является интеллектуальной полуавтономной подсистемой, предназначенной для восприятия и генерации высокоскоростных сигналов в реальном масштабе времени без участия центрального процессора. TPU, в отличие от обычного таймера, позволяет устанавливать и отрабатывать любые взаимосвязи между каналами с помощью собственного микроядра, не отвлекая центральный процессор. При этом для использования даже сложных таймерных функций не требуется знание микрокода TPU, поскольку библиотека основных функций TPU находится в масочном ПЗУ МК. Список функций, каждую из которых можно получить на любом из 16-ти независимых каналов, приведен ниже в табл. 2, 3 (существует два типа масок, называемых “А” и “G”, поэтому при заказе МК необходимо указывать тип маски, которая больше подходит для данного приложения).
    Каждый из 16-ти независимых двунаправленных каналов содержит регистр входной фиксации, регистр выходного сравнения и логику защелок. Выбор и установка параметров любой функции осуществляется записью в соответствующие регистры управления, расположенные в ОЗУ параметров. Через ОЗУ параметров осуществляется также обмен параметрами между TPU и CPU. Две независимые временные базы с возможностью внешнего тактирования дополнительно повышают гибкость использования TPU. Микроядро выполняет обработку запросов на обслуживание, поступающих от каналов через приоритетный планировщик. Микроядро выполняет алгоритмы обслуживания каналов в соответствии с микрокодом либо из масочного ПЗУ (функции, приведенные в табл. 2, 3), либо из модуля ОЗУ с эмуляцией TPU (здесь могут быть выполнены любые алгоритмы пользователя). При необходимости написать собственный микрокод для TPU пользователь может воспользоваться ассемблером TPUASM, свободно доступном через Internet (раздел FTP файл-сервера, посвященный TPU). Здесь же находятся исходные тексты всех библиотечных функций, а также исходные тексты программ, описанных в статьях о примерах применений.

Таблица 2. Функции TPU (маска "А")

Код Название Описание
PPWA Period/Pulse-Width Accumulator Измеряет длительность импельсов (периодов) с накоплением в 16-или 24-разрядный регистр. Накопление производится за программируемое количество периодов (1...255) без прерывания ЦП. По завершении функции может устанавливаться связь с другим каналом либо формироваться прерывание
OC Output Compare Формирование фронта в момент равенства содержимого регистра выходного сравнения и счетчика. Полярность импульса, периодичность, а также связь с другими каналами программруется
SM Stepper Motor Функция управления шаговым двигателем поддерживает линейное ускорение и замедление с программируемой скоростью (до 14 шагов). Фуенкция может задействовать до 8 каналов
PSP Position-Synchronized Pilse Generator Формируется импульс программируемой длительности в опрелеленный момент периода ("угол отпирания")
PMA/PMM Period Measurement with Additional or Missing Transition detect Измеряется период (в тактах опорного генератора), текущее измеренное значение доступно всем остальным каналам. Производится обнаружение периода с отклонением, превышающим заданную величину, при этом значение этого периода не считается действительным
ITC Input Captire/Transition Counter Фиксируется значение одного из счетчиков в регистре входной фиксации в момент перепада сигнала на входе канала или после определенного количества перепадов. После возникновения события может устанавливаться связь с другими каналами
PWM Pulse-Wigth Modulation Формируется ШИМ-сигнал с заполнением от 0 до 100% (с учетом разрешения TPU)
DIO Discrete Input/Outpit Линии каждого из 15 каналов используются для простого ввода/вывода
SPWM Synchronized PWM Формируется ШИМ-сигнал с возможностью изменения длительности периода и времени "включенного состояния". Три возможных режима работы позволяют создавать сложные временные взаимоотношения между каналами
QDEC Quadrature Decode Функция задействует два канала и позволяет определить направление вращения и текущее положение. Ориентирована для использования с двигателями, использующими щелевой датчик (шифратор)

Таблица 3. Функции TPU (маска "G")

Код Название Описание
PTA Programmable Time Accumulator Функция накапливает в 32-рязрядном регистре время нахождения сигнала в высоком или низком состоянии, а также периода входного сигнала, за программируемое число периодов (1...255)
QOM Queued Output Match Формирует однократные, повторяющиеся заданное количество раз или непрерывные цепочки импульсов на основании таблицы в ОЗУ параметров. Функция может запускаться событием на другом канале и позволяет формировать сложные временные зависимости
TSM Table Stepper Motor Осуществляет управление ускорением и замедлением шагового двигателя с программируемым числом шаговых соотношений (до 58). Функция использует таблицу в ОЗУ параметров (не алгоритм), что позволяет пользователю полностью определять характер управления
FQM Frequency Measurement Служит для измерения частоты сигнала методом подсчета внешних импульсов за программируемый промежуток времени. Метод служит для измерения высокочастотного сигнала, для низких частот рекомендуется использовать РТА
UART Asynchronous Receiver/Transmitter Обеспечивает последовательный асинхронный обмен информацией и задействует один или два канала. Длина слова программируется от 1 до 14 бит. Поддерживается формирование и обнаружение бита четности. Максимальная скорость обмена составляет 100 Кбод. При скорости 9600 бод TPU может функционировать как 8 последовательных интерфейсов UART
NITC New Input Transition Counter Любой из каналов TPU может фиксировать не только содержимое выбранного счетчика, но и содержимое выбранной ячейки ОЗУ параметров, по одиночному событию или после заданного числа событий на внешнем входе
COMM Multiphase Motor Commutation Функция генерирует сигналы фазовой коммутации для различных бесколлекторных электродвигателей, включая трехфазные постоянного тока. Коммутация основывается на состоянии (положении), декодированном функцией FQD, что позводляет обходиться без датчиков Холла
MCPWM Multichannel PWM Позволяет нерерывно генерировать ШИМ-сигнал с заполнением от 0 до 100% независимо от других действий TPU. Функция задействует два канала и требует один внешний логический элемент
HALLD HALL Sensor Decode Преобразует сигналы с датчиков Холла бесколлекторного двигателя, а также информацию о направлении вращения от ЦП, в число, необходимое для функции СОММ. Функция ориентирована на работу с двумя или тремя датчиками
FQD Fast Quadrature Decode Функция обеспечивает обратную связь по положению, необходимую для управления двигателемю При высокой скорости вращения один из каналов запрещается, что позволяет декодировать более быстрые сигналы

    Более подробно о работе с TPU можно прочитать в руководстве по TPU (TPURM/AD), а также в статьях, посвященных подробному описанию функций TPU (TPUAN00 … TPUAN15).
    Более подробную информацию о МК и других электронных компонентах фирмы MOTOROLA можно найти на российском сервере www.motco.ru.

Санкт-Петербургский Государственный Электротехнический университет
Тел. (812) 234-2503, факс (812) 234-2758
E-mail:
leti@sovamsu.sovusa/com
Московский Энергетический Институт
Тел. (095) 273-0989, факс (095) 273-1348
E-mail:
bmg@aep.mpei.ac.ru

Published by NewIT Labs
NEW IT Labs